package com.riche.codefactory.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.riche.codefactory.model.domain.Question;
import org.apache.ibatis.annotations.Select;

import java.util.Date;
import java.util.List;

/**
 * @InterfaceName: QuestionMapper
 * @Description: 题目mapper类
 * @Author: Gaoruiqi
 * @Date: 2025-10-18 13:57
 * @Version: 1.0
 **/
public interface QuestionMapper extends BaseMapper<Question> {


    /**
     * 查询题目列表（包括已被逻辑删除的数据）
     * 1. 因为es要和mysql保证完全的一致，MySQL里面的isDelete是逻辑删除，es里面也把逻辑删除的字段给同步过去了，所以es中也需要用isDelete表示是否生效
     * 2. mysql里面用的是mybatis-plus框架，方法也是用的plus里的方法，所以没有办法把被逻辑删除的信息给查出来，所以需要通过手动去查一遍
     */
    @Select("select * from question where updateTime >= #{minUpdateTime}")
    List<Question> listQuestionWithDelete(Date minUpdateTime);


}
